<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org"
      xmlns:shiro="http://www.pollix.at/thymeleaf/shiro">
<head th:include="include :: header"></head>
<body class="hold-transition skin-yellow sidebar-mini">
<section class="content-header">
    <h1>编辑生产令</h1>
</section>
<section class="content">
    <div class="row">
        <div class="col-xs-12">
            <div class="box">
                <div class="box-header">
                    <form id="queryForm" class="form-horizontal">

                    </form>
                </div>
                <div class="box-body">
                    <form id="splitProdOrdForm" class="form-horizontal bg-white">
                        <input id="proId" th:value="${proId}" type="hidden" style="display: none" readonly="readonly"/>
                        <input id="hideProCode" type="hidden" style="display: none" readonly="readonly"/>
                        <input id="hideProNum" type="hidden" style="display: none" readonly="readonly"/>
                        <div class="col-md-6">
                            <div class="col-md-12 form-group">
                                <label class="control-label">项目信息</label>
                            </div>
                            <div class="col-md-12 form-group col-md-4">
                                <label class="control-label"
                                       style="text-align: left;width:70px;padding-right: 0px;padding-left: 10px;">项目编号</label>
                                <label class="control-label" col-md-8 style="text-align: left;padding-left: 5px;">
                                    <span id="proCode"></span>
                                </label>
                            </div>
                            <div class="col-md-12 form-group">
                                <label class="control-label col-md-4"
                                       style="text-align: left;width:70px;padding-right: 0px;padding-left: 10px;">项目名称</label>
                                <label class="control-label col-md-8" style="text-align: left;padding-left: 5px;">
                                    <span id="proName"></span>
                                </label>
                            </div>
                            <div class="col-md-12 form-group">
                                <label class="control-label col-md-4"
                                       style="text-align: left;width:70px;padding-right: 0px;padding-left: 10px;">项目数量</label>
                                <label class="control-label col-md-8" style="text-align: left;padding-left: 5px;">
                                    <span id="proQty"></span>
                                </label>
                            </div>
                            <div class="col-md-12 form-group">
                                <label class="control-label col-md-4"
                                       style="text-align: left;width:70px;padding-right: 0px;padding-left: 10px;">交货时间</label>
                                <label class="control-label col-md-8" style="text-align: left;padding-left: 5px;">
                                    <span id="cusDeliveryDate"></span>
                                </label>
                            </div>
                            <div class="col-md-12 form-group">
                                <label class="control-label col-md-4"
                                       style="text-align: left;width:70px;padding-right: 0px;padding-left: 10px;">需方</label>
                                <label class="control-label col-md-8" style="text-align: left;padding-left: 5px;">
                                    <span id="customer"></span>
                                </label>
                            </div>
                            <div class="col-md-12 form-group">
                                <label class="control-label"
                                       style="text-align: left;width:70px;padding-right: 0px;padding-left: 10px;">设计类别</label>
                                <label class="control-label" style="text-align: left;padding-left: 5px;">
                                    <span id="designStr"></span>
                                </label>
                            </div>
                            <div class="col-md-12 form-group">
                                <label class="control-label col-md-4"
                                       style="text-align: left;width:70px;padding-right: 0px;padding-left: 10px;">安装地点</label>
                                <label class="control-label col-md-8" style="text-align: left;padding-left: 5px;">
                                    <span id="insSite"></span>
                                </label>
                            </div>
                            <div class="col-md-12 form-group">
                                <label class="control-label col-md-4"
                                       style="text-align: left;width:70px;padding-right: 0px;padding-left: 10px;">销售类型</label>
                                <label class="control-label col-md-8" style="text-align: left;padding-left: 5px;">
                                    <span id="prodTypeStr"></span>
                                </label>
                            </div>
                            <div class="col-md-12 form-group">
                                <label class="control-label col-md-4"
                                       style="text-align: left;width:70px;padding-right: 0px;padding-left: 10px;">特种设备</label>
                                <label class="control-label col-md-8" style="text-align: left;padding-left: 5px;">
                                    <span id="speEquipTypeStr"></span>
                                </label>
                            </div>
                            <div class="col-md-12 form-group">
                                <label class="control-label col-md-4"
                                       style="text-align: left;width:70px;padding-right: 0px;padding-left: 10px;">项目需求</label>
                                <label class="control-label col-md-8" style="text-align: left;padding-left: 5px;">
                                    <span id="proRequirements"></span>
                                </label>
                            </div>
                            <div class="col-md-12 form-group">
                                <label class="control-label col-md-4"
                                       style="text-align: left;width:70px;padding-right: 0px;padding-left: 10px;">制造范围</label>
                                <label class="control-label col-md-8" style="text-align: left;padding-left: 5px;">
                                    <span id="manufScope"></span>
                                </label>
                            </div>
                            <div class="col-md-12 form-group">
                                <label class="control-label col-md-4"
                                       style="text-align: left;width:70px;padding-right: 0px;padding-left: 10px;">相关文件</label>
                                <label id="lbl_files" class="control-label col-md-8"
                                       style="text-align: left;padding-left: 5px;">

                                </label>
                            </div>
                        </div>
                        <div class="col-md-6">
                            <div class="col-md-12 form-group">
                                <label class="control-label">待编辑生产令</label>
                            </div>
                            <div class="col-md-12 form-group">
                                <label class="control-label"
                                       style="text-align: left;width:90px;padding-right: 0px;padding-left: 10px;">生产令编号</label>
                                <label class="control-label" style="text-align: left;padding-left: 5px;">
                                    <input name="prodNo" type="text" class="form-control" readonly="readonly"/>
                                    <input name="prodId" type="hidden" style="display: none" readonly="readonly"/>
                                </label>
                            </div>
                            <div class="col-md-12 form-group">
                                <label class="control-label"
                                       style="text-align: left;width:90px;padding-right: 0px;padding-left: 10px;">项目名称</label>
                                <label class="control-label" style="text-align: left;padding-left: 5px;">
                                    <input name="prodNam" type="text" class="form-control" readonly="readonly"/>
                                </label>
                            </div>
                            <div class="col-md-12 form-group">
                                <label class="control-label"
                                       style="text-align: left;width:90px;padding-right: 0px;padding-left: 10px;">数量</label>
                                <label class="control-label" style="text-align: left;padding-left: 5px;">
                                    <input name="prodNum" type="text" class="form-control" oninput="handleInput(this)" readonly="readonly"/>
                                </label>
                            </div>
                            <div class="col-md-12 form-group">
                                <label class="control-label"
                                       style="text-align: left;width:90px;padding-right: 0px;padding-left: 10px;">交货期</label>
                                <label class="control-label" style="text-align: left;padding-left: 5px;">
                                    <input name="prodDelDat" type="text" class="form-control datepicker"
                                           readonly="readonly"/>
                                </label>
                            </div>
                            <div class="col-md-12 form-group">
                                <label class="control-label"
                                       style="text-align: left;width:90px;padding-right: 0px;padding-left: 10px;">类别</label>
                                <label class="control-label" style="text-align: left;padding-left: 5px;">
                                    <input name="prodTyp" type="radio" value="1"/>设备类&nbsp;&nbsp;&nbsp;&nbsp;
                                    <input name="prodTyp" checked="checked" type="radio" value="2"/>其他
                                </label>
                            </div>
                            <div class="col-md-12 form-group">
                                <label class="control-label"
                                       style="text-align: left;width:90px;padding-right: 0px;padding-left: 10px;">是否重点</label>
                                <label class="control-label" style="text-align: left;padding-left: 5px;">
                                    <input name="prodIsKey" type="radio" value="1"/>是&nbsp;&nbsp;&nbsp;&nbsp;
                                    <input name="prodIsKey" checked="checked" type="radio" value="0"/>否
                                </label>
                            </div>
                            <div class="col-md-12 form-group">
                                <label class="control-label"
                                       style="text-align: left;width:90px;padding-right: 0px;padding-left: 10px;vertical-align: top">产品分类</label>
                                <label class="control-label" style="text-align: left;padding-left: 5px;">
                                    <input name="prodBacTyp" class="form-control" type="text" maxlength="255"/>
                                </label>
                            </div>
                            <div class="col-md-12 form-group">
                                <label class="control-label"
                                       style="text-align: left;width:90px;padding-right: 0px;padding-left: 10px;vertical-align: top">备注</label>
                                <label class="control-label" style="text-align: left;padding-left: 5px;">
                                    <textarea name="prodRem" style="resize: none" class="form-control" maxlength="255"
                                              rows="4" cols="70"></textarea>
                                </label>
                            </div>
                            <div class="col-md-12 form-group">
                                <button id="btn_saveUpdate" type="button" class="btn btn-success pull-right"
                                        shiro:hasPermission="pro:release:commit"
                                        style="margin-left: 15px">保存修改
                                </button>
                                <!--                                <button id="btn_saveAdd" type="button" class="btn btn-success pull-right">新增生产令</button>-->
                            </div>
                        </div>
                        <!--                        <div class="col-md-12">-->
                        <!--                            <div class="col-md-12 form-group">-->
                        <!--                                <h3>已创建生产令</h3>-->
                        <!--                            </div>-->
                        <!--                            <table id="bootstrap-table-tempProdOrd"></table>-->
                        <!--                            <button id="btn_close" type="button" class="btn btn-default pull-right"-->
                        <!--                                    style="margin-left: 15px;margin-top: 10px;">取消-->
                        <!--                            </button>-->
                        <!--                            <button id="btn-save" type="button" style="margin-top: 10px;" shiro:hasPermission="pro:release:commit"-->
                        <!--                                    class="btn btn-info file-contract btn-file pull-right">保存修改-->
                        <!--                            </button>-->
                        <!--                        </div>-->
                    </form>
                </div>
            </div>
        </div>
    </div>
</section>
<div th:include="include :: footer"></div>
<script th:inline="javascript">
    let tempData;
    let removeData = new Array;
    let currentProdNo = [[${prodOrd.prodNo}]]
    $(function () {
        /**加载项目信息和生产令信息*/
        loadProjectInfo($("#proId").val());
        /**
         * 取消
         */
        $("#btn_close").on('click', function () {
            window.opener.reLoad();
            window.open('', '_self');
            window.close();
        });
        /**
         * 保存编辑到临时表中
         */
        $("#btn_saveUpdate").on('click', function () {
            if ($("#splitProdOrdForm [name='prodNum']").val() === '') {
                js.modal.warning("尊敬的用户,请输入数量！");
                return;
            }

            let tempObj = new Object();
            tempObj.prodId = $("#splitProdOrdForm [name='prodId']").val();
            tempObj.prodNo = $("#splitProdOrdForm [name='prodNo']").val();
            tempObj.proName = $("#splitProdOrdForm [name='prodNam']").val();
            tempObj.prodNum = $("#splitProdOrdForm [name='prodNum']").val();
            tempObj.prodRem = $("#splitProdOrdForm [name='prodRem']").val();
            tempObj.prodBacTyp = $("#splitProdOrdForm [name='prodBacTyp']").val();
            tempObj.prodTyp = $("#splitProdOrdForm [name='prodTyp']:checked").val();
            tempObj.prodIsKey = $("#splitProdOrdForm [name='prodIsKey']:checked").val();
            tempObj.prodProCod = $("#proCode").text();
            tempObj.customer = $("#customer").text();
            let currentDate = new Date;
            let year = currentDate.getFullYear(); //获取当前年
            let mon = currentDate.getMonth() + 1; //获取当前月
            let date = currentDate.getDate(); //获取当前日
            tempObj.prodCreDat = year + '-' + mon + '-' + date;
            let prodDelDat = $("#splitProdOrdForm [name='prodDelDat']").val();
            if (prodDelDat === '') {
                tempObj.prodDelDat = null;
            } else {
                tempObj.prodDelDat = $("#splitProdOrdForm [name='prodDelDat']").val();
            }
            tempData.push(tempObj);
            js.post({
                url: ctx + 'prodOrd/checkNum',
                type: 'post',
                traditional: true,            // 阻止深度序列化， 使参数可以使用数组
                dataType: 'json',
                contentType: "application/x-www-form-urlencoded",
                data: {
                    num: $("#splitProdOrdForm [name='prodNum']").val(),
                    prodProCod: $("#proCode").text()
                },
                async: true,                // 异步执行
                success: function (result) {
                    if (result.type === web_status.SUCCESS) {
                        js.post({
                            url: ctx + 'prodOrd/saveEdit',
                            type: 'post',
                            traditional: true,            // 阻止深度序列化， 使参数可以使用数组
                            dataType: 'json',
                            contentType: "application/x-www-form-urlencoded",
                            data: {
                                prodJson: JSON.stringify(tempData)
                            },
                            async: true,                // 异步执行
                            success: function (result) {
                                if (result.type === web_status.SUCCESS) {

                                    js.modal.success(result.msg);
                                    window.opener.reLoad();
                                    window.open('', '_self');
                                    window.close();
                                } else {
                                    js.modal.warning(result.msg);
                                }
                            },
                            error: function () {
                                js.modal.fail();
                            }
                        });
                    } else {
                        js.modal.warning(result.msg);
                    }
                },
                error: function () {
                    js.modal.fail();
                }
            });
        })

    });

    /**
     * 输入检测
     * @param obj
     */
    function handleInput(obj) {
        if (obj.value.length == 1) {
            obj.value = obj.value.replace('.', '');
            obj.value = obj.value.replace(/[^1-9]/g, '')
        } else {
            obj.value = obj.value.replace(/\D/g, '')
        }
    }


    /**
     * 加载项目信息
     */
    function loadProjectInfo(proId) {
        js.post({
            url: ctx + 'prodOrd/getProInfo',
            type: 'post',
            traditional: true,            // 阻止深度序列化， 使参数可以使用数组
            dataType: 'json',
            contentType: "application/x-www-form-urlencoded",
            data: {
                proId: proId
            },
            async: true,                // 异步执行
            success: function (result) {
                if (result.type === web_status.SUCCESS) {
                    let project = result.data.project;
                    let files = result.data.files;
                    $("#splitProdOrdForm").fillSpan(project);
                    $("#hideProCode").val(project.proCode);
                    $("#hideProNum").val(project.proQty);
                    $("#lbl_files").empty();
                    for (let i = 0; i < files.length; i++) {
                        $("#lbl_files").append('<a href="/prodOrd/downloadProjectFile/' + files[i].id + '">' + files[i].fileName + '</a>&nbsp;&nbsp;&nbsp;&nbsp;');
                    }
                    $("#splitProdOrdForm [name='prodNam']").val(project.proName);
                    loadAlreadyExistsProdList(project.proCode);
                } else {
                    js.modal.warning(result.msg);
                }
            },
            error: function () {
                js.modal.fail();
            }
        });

    }

    /**
     * 获取已存在的生产令列表
     * @param proCode
     */
    function loadAlreadyExistsProdList(proCode) {
        js.post({
            url: ctx + 'prodOrd/loadAlreadyExistsProdList',
            type: 'post',
            traditional: true,            // 阻止深度序列化， 使参数可以使用数组
            dataType: 'json',
            contentType: "application/x-www-form-urlencoded",
            data: {
                proCode: proCode
            },
            async: true,                // 异步执行
            success: function (result) {
                if (result.type === web_status.SUCCESS) {
                    tempData = result.data;
                    for (let i = 0; i < tempData.length; i++) {
                       if(tempData[i].prodNo == currentProdNo){
                           $("#splitProdOrdForm [name='prodNo']").val(tempData[i].prodNo);
                           $("#splitProdOrdForm [name='prodId']").val(tempData[i].prodId);
                           $("#splitProdOrdForm [name='prodNam']").val(tempData[i].proName);
                           $("#splitProdOrdForm [name='prodNum']").val(tempData[i].prodNum);
                           $("#splitProdOrdForm [name='prodDelDat']").val(tempData[i].prodDelDat);
                           $("#splitProdOrdForm [name='prodRem']").text(tempData[i].prodRem);
                           $("#splitProdOrdForm [name='prodBacTyp']").val(tempData[i].prodBacTyp);
                           $("#splitProdOrdForm [name='prodTyp']").each(function () {
                               if (parseInt($(this).val()) === tempData[i].prodTyp) {
                                   $(this).prop("checked", true);
                               }
                           });
                           $("#splitProdOrdForm [name='prodIsKey']").each(function () {
                               if (parseInt($(this).val()) === tempData[i].prodIsKey) {
                                   $(this).prop("checked", true);
                               }
                           });
                           break;
                       }
                    }
                } else {
                    js.modal.warning(result.msg);
                }
            },
            error: function () {
                js.modal.fail();
            }
        });
    }

    // /**
    //  * 加载项目表数据
    //  */
    // function loadTempProdOrdTable(data) {
    //     $("#bootstrap-table-tempProdOrd").bootstrapTable('destroy');
    //     tempTable = js.table.init({
    //         id: 'bootstrap-table-tempProdOrd',
    //         data: data,
    //         showExport: false,
    //         pagination: false,
    //         uniqueId: 'orderNo',
    //         OnLoadSuccess:function (data){
    //             $("#splitProdOrdForm [name='prodNo']").val(data[0].prodNo);
    //             $("#splitProdOrdForm [name='prodId']").val(data[0].prodId);
    //             $("#splitProdOrdForm [name='prodNam']").val(data[0].proName);
    //             $("#splitProdOrdForm [name='prodNum']").val(data[0].prodNum);
    //             $("#splitProdOrdForm [name='prodDelDat']").val(data[0].prodDelDat);
    //             $("#splitProdOrdForm [name='prodRem']").text(data[0].prodRem);
    //             $("#splitProdOrdForm [name='prodBacTyp']").val(data[0].prodBacTyp);
    //             $("#splitProdOrdForm [name='prodTyp']").each(function () {
    //                 if (parseInt($(this).val()) === data[0].prodTyp) {
    //                     $(this).prop("checked", true);
    //                 }
    //             });
    //             $("#splitProdOrdForm [name='prodIsKey']").each(function () {
    //                 if (parseInt($(this).val()) === data[0].prodIsKey) {
    //                     $(this).prop("checked", true);
    //                 }
    //             });
    //
    //         },
    //         columns: [
    //             {
    //                 title: '序号', width: '60',
    //                 formatter: function (value, row, index) {
    //                     return index + 1;
    //
    //                 }
    //             },
    //             {
    //                 title: '生产令编号', field: 'prodNo',
    //                 formatter: function (value, row, index) {
    //                     if (value != null) {
    //                         return value;
    //                     } else {
    //                         return '--';
    //                     }
    //
    //                 }
    //             },
    //             {
    //                 title: '项目名称', field: 'proName',
    //                 formatter: function (value, row, index) {
    //                     if (value != null) {
    //                         return value;
    //                     } else {
    //                         return '--';
    //                     }
    //
    //                 }
    //             },
    //             {
    //                 title: '项目数量', field: 'prodNum',
    //                 formatter: function (value, row, index) {
    //                     if (value != null) {
    //                         return value;
    //                     } else {
    //                         return '--';
    //                     }
    //                 }
    //             },
    //             {
    //                 title: '需方', field: 'customer',
    //                 formatter: function (value, row, index) {
    //                     if (value != null) {
    //                         return value;
    //                     } else {
    //                         return '--';
    //                     }
    //
    //                 }
    //             },
    //             {
    //                 title: '是否重点', field: "prodIsKey",
    //                 formatter: function (value, row, index) {
    //                     if (value != null) {
    //                         if (parseInt(value) === 1) {
    //                             return '是';
    //                         } else {
    //                             return '否';
    //                         }
    //                     } else {
    //                         return '--';
    //                     }
    //                 }
    //             },
    //             {
    //                 title: '类别', field: "prodTyp",
    //                 formatter: function (value, row, index) {
    //                     if (value != null) {
    //                         if (parseInt(value) === 1) {
    //                             return '设备类';
    //                         } else if (parseInt(value) === 2) {
    //                             return '其他';
    //                         }
    //                     } else {
    //                         return '--';
    //                     }
    //                 }
    //             },
    //             {
    //                 title: '产品分类', field: "prodBacTyp",
    //                 formatter: function (value, row, index) {
    //                     if (value != null) {
    //                         return value;
    //                     } else {
    //                         return '--';
    //                     }
    //                 }
    //             },
    //             {
    //                 title: '创建时间', field: 'prodCreDat'
    //             },
    //             {
    //                 title: '操作', width: '180',
    //                 formatter: function (value, row, index) {
    //                     let elements = new Array();
    //                     if (row.prodSta != 2) {
    //                         elements.push('<button class="btn btn-warning btn-xs" type="button" onclick="showEditInfo(' + row.orderNo + ')">选择</button>');
    //                         elements.push('<button class="btn btn-danger btn-xs" type="button"  onclick="removeTempData(' + row.orderNo + ')">删除</button>');
    //                     }
    //                     return elements.join('');
    //                 }
    //             }
    //         ]
    //     });
    // }

    /**
     * 加载编辑信息
     * @param prodId
     */
    function showEditInfo(orderNo) {
        let row = $("#bootstrap-table-tempProdOrd").bootstrapTable('getRowByUniqueId', orderNo);
        console.log(row)
        $("#splitProdOrdForm [name='prodNo']").val(row.prodNo);
        $("#splitProdOrdForm [name='prodId']").val(row.prodId);
        $("#splitProdOrdForm [name='prodNam']").val(row.proName);
        $("#splitProdOrdForm [name='prodNum']").val(row.prodNum);
        $("#splitProdOrdForm [name='prodDelDat']").val(row.prodDelDat);
        $("#splitProdOrdForm [name='prodRem']").text(row.prodRem);
        $("#splitProdOrdForm [name='prodBacTyp']").val(row.prodBacTyp);
        $("#splitProdOrdForm [name='prodTyp']").each(function () {
            if (parseInt($(this).val()) === row.prodTyp) {
                $(this).prop("checked", true);
            }
        });
        $("#splitProdOrdForm [name='prodIsKey']").each(function () {
            if (parseInt($(this).val()) === row.prodIsKey) {
                $(this).prop("checked", true);
            }
        });

    }

    /**
     * 删除项目
     * @param orderNo
     */
    function removeTempData(orderNo) {
        let newTempData = new Array();
        let removeProdNo;
        let order = 0;
        for (let i = 0; i < tempData.length; i++) {
            if (parseInt(tempData[i].orderNo) != parseInt(orderNo)) {
                tempData[i].orderNo = order + 1;
                newTempData.push(tempData[i]);
                order++;
            } else {
                if (tempData[i].prodId != null) {
                    removeData.push(tempData[i]);
                    removeProdNo = tempData[i].prodNo;
                }
            }
        }
        tempData = newTempData;
        if (tempData.length === 0) {
            $("#splitProdOrdForm [name='prodNo']").val($("#proCode").text());
        } else {
            $("#splitProdOrdForm [name='prodNo']").val(removeProdNo);
        }
        loadTempProdOrdTable(tempData)
    }
</script>
</body>
</html>